This invention relates to transport protocols.
It is important for transport protocols to shield applications from the vagaries of wireless multi-hop paths while offering good performance in terms of application-perceived short latency and throughput of errorless, data.
In “Improving TCP Performance in Multipath Packet Forwarding Schemes,” Journal of Communications and Networks, Vol. 4, No. 2, June 2002, Lee et al propose simple TCP modifications, and the use of flow-aware routers, to address reordering issues in multi-path transport. They do not consider lossy channels, assuming instead that the underlying paths are reliable. However, Chen et al propose a framework for lossy networks in “Multipath TCP in Lossy Wireless Environment,” Proc. IFIP Third Annual Mediterranean Ad Hoc Networking Workshop (Me-Hoc-Net '04), 2004. In the Chen et al approach multiple copies of the same packet are transmitted over different paths, which is fine, except that performance degrades sharply as error-rates increase beyond 20%.
Zhang in “Understanding Internet Routing Anomalies and Building Robust Transport Layer Protocols,” PhD. Dissertation, Dept. of Computer Science, Princeton University, September 2005, proposes an mTCP approach, which uses overlay multi-paths to enhance the robustness of end-to-end communications. A subset of the available paths is used in the forward direction such that the selected paths are disjoint to a certain degree. However, mTCP maintains only a single reverse path, so, mTCP does not exploit reverse path diversity and its performance can depend heavily on the choice of the reverse path. Moreover, since no redundancy is introduced at the TCP layer, all lost packets must be retransmitted, resulting in excessive re-transmissions.
Hsieh et al in “A Transport Layer Approach for Achieving Aggregate Bandwidths on Multi-homed Mobile Hosts”, Prod A61 Mobicom '02, 2002, propose another multi-path TCP scheme, called the pTCP, which manages a group of TCP transports operating on different paths, and allows dynamic remapping of packets to paths in case of congestion/timeouts. This protocol provides separation of congestion control and reliability, since each path can implement its own congestion control scheme. However, pTCP only allows a very limited degree of TCP redundancy, since a packet is transmitted redundantly (over two paths) only if it immediately follows a timeout. Furthermore, it is not clear that the pTCP algorithm provides good performance in highly lossy networks where the source of residual loss is not congestion, and link-layer mechanisms do not suffice.
A receiver-centric adaptation of the pTCP approach, reported by Hsieh et al in “A Receiver-Centric Transport Protocol for Mobile Hosts with Heterogeneous Wireless Interfaces”, Proc. ACM Mobicom '03, 2003, lets the receiver maintain the congestion window and handle reliability and congestion control. This approach obtains better performance by exploiting the fact that the receiver has more information about the wireless channels and is more capable of handling losses. However, this approach relies on retransmission of lost packets to recover from losses, which can seriously limit its performance advantages in a highly lossy environment.
The above-mentioned prior art publications recognize the potential of multiple paths and consider implementation issues. However, they do not handle multiple highly lossy paths effectively, and may not tolerate a wide range of heterogeneity in path characteristics.
The problem of diversity coding for multi-paths has been modeled theoretically, though the models incorporate only limited protocol adaptivity and/or loss dynamics/path heterogeneity.
Tsirigos et al, in “Analysis if Multipath Routing,” IEEE Transactions on Wireless Communications, Vol. 3, No. 1, January 2004 (Parts I and II), derive analytical expressions for calculating the delivery probability when packets are over multiple paths (without much delay heterogeneity) based on a simple model of packet failure probabilities on each path and the mapping function of packets to paths. A polynomial time algorithm is provided for computing the optimal mapping, given the failure probabilities on the paths and their correlation.
Vergetis et al, for example in “Realizing the Benefits of User-Level Channel Diversity,” Computer Communications Review, Vol. 35, No. 5, October 2005, address a similar modeling question, but with a more realistic path (or channel) loss model where loss rates can vary at a faster timescale (on a per packet basis) according to a Markovian model. The benefits of using multiple paths (channels) in improving the packet delivery probability was experimentally evaluated on a 802.11 testbed, but an adaptive transport protocol was not suggested, and only a small number of channels (that differed only in their loss behaviors) were considered.
Miu et al in “Improving Loss Resilience with Multi-radio Diversity in Wireless Networks”, Proc. ACM Mobicom '05, 2005 consider how better loss resilience can be provided by exploiting multi-path diversity, by combining multiple, possibly erroneous, copies of a given frame, and a low-overhead retransmission scheme. This approach assumes that the channel introduces bit errors rather than packet erasures.
Jain et al in “Exploiting Path Diversity in the Link Layer in Wireless Ad Hoc Networks”, Proc. of the 6th IEEE WoWMoM Symposium, Taormina, Italy, June 2005, propose a link-layer mechanism to determine the next hop locally based on prevalent channel conditions. This approach may, however, lead to paths that are dynamically varying and possibly very long, resulting in large variation in the RTT (Round Trip Time) and packet reordering.
Loss-Tolerant TCP (LT-TCP), proposed in Tickoo et al in “LT-TCP: End-to-End Framework to Improve TCP Performance over Networks with Lossy Channels”, Proc. 13th International Workshop on Quality of Service (IEEE IWQoS 2005), Passau, Germany, June 200, is a transport protocol designed to be robust in environments with high loss rates and bursty losses. It uses adaptive segmentation, loss estimation and FEC to improve performance, mainly by avoiding expensive timeouts in TCP. LT-TCP uses an estimate of the end-to-end loss rate to provision FEC adaptively through both proactive and reactive mechanisms. However, LT-TCP is designed to operate over a single path and cannot leverage additional capacity and diversity benefits available through use of multi-paths.
To summarize, the problem of scalable aggregation of heterogeneous, lossy paths (whose individual performance characteristics are poor and highly variable) remains unsolved.